package com.succez.server.servlet;

/**
 * Servlet抽象类
 */
public abstract class Servlet {

    public Servlet() {
        this.init();
    }

    /**
     * 一个servlet真正对外提供服务的方法
     * 
     * @param response 此次请求的响应
     * @param request  此次请求的参数
     */
    public final void service(Response response, Request request) {
        String method = request.getMethod().toUpperCase();
        if (method.equals(Consts.METHOD_GET)) {
            doGet(response, request);
        } else if (method.equals(Consts.METHOD_POST)) {
            doPost(response, request);
        }

    };

    /**
     * 一个Servlet的初始化方法
     */
    public void init() {

    };

    /**
     * 一个Servlet销毁的方法
     */
    public void destroy() {

    };

    protected abstract void doPost(Response response, Request request);

    protected abstract void doGet(Response response, Request request);
}